import time,math
#1.取当前日期时间  2.取日期时间的部分 3.日期之差  4.日期时间加一定的日期时间
#人类习惯用三种方式在计算机中表示日期时间
#1.时间戳 是一个小数，一个距离1970年1月1日零时零分零秒过了多少秒的数字
time1 = time.time() #取当前时间 时间戳
print(time1)
print(type(time1))  #时间戳类型的值是float精准方便直接计算
#2.时间元组
time2 = time.gmtime(time1) #时间戳可以转换为格林威治标准时间的时间元组
localTime = time.localtime(time1) #时间戳转换为本地时区的时间元祖
print(time2)
print(type(time2)) # time.struct_time 结构化的时间
print(localTime)
#算虚岁就是当前年份 - 出生年份
currYear = localTime.tm_year
#3.格式化的时间字符串
bornStr='2002-10-05'
bornTimeTuple = time.strptime(bornStr,'%Y-%m-%d')  #出生日期字符串转换为 出生日期元组
bornYear = bornTimeTuple.tm_year #出生年份
print('虚岁为:'+str(currYear - bornYear))

#算虚岁  准确的时间 -准确的时间 时间戳 当前时间是时间戳 ，出生日期 肯定字符串 字符串转时间元组 时间元组转 时间戳
bornTime = time.mktime(bornTimeTuple) #时间元组转换为时间戳
print('周岁为:'+ str(math.floor((time1 - bornTime)/ (365 * 24 * 3600))))

